package classByGZMZ;


import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Scanner;

/**
 * @Author zsj
 * @Version 1.0
 * @Date 2024/3/4 15:40
 * @Description
 */
public class TestDay01 {
    public static void main(String[] args) {
        one();
    }

    /**
     * 1.计算出1-100之间所有不能被3整除的整数的和 大于(或等于)2000的数字。
     */
    public static void one() {
        int sum = 0;
        for (int i = 1; i <= 100; i++) {
            if (i % 3 != 0) {
                sum += i;
            }
        }
        System.out.println(sum);
    }

    /**
     * 2.编写一个程序，最多接受10个数字，并求出其中所有正数的和。用户可通过输入999终止程序，统计用户输入的正数个数，并显示这些正数的和。
     */
    public static void two() {
        System.out.println("输入十个数字");
        int sum = 0;
        Scanner scanner = new Scanner(System.in);
        for (int i = 0; i < 10; i++) {
            sum += scanner.nextInt();
        }
        System.out.println(sum);
    }

    /**
     * 编写JAVA程序，实现接收用户输入的行数，使用“@“打印输出平行四边形, 要求：
     * 	1、针对接收行数进行有效性判断，如果小于零，提示无效行数，结束操作
     * 	2、每行输出10个“@“,效果如下
     */
    public static void three() {
        System.out.println("请输入行数");
        Scanner scanner = new Scanner(System.in);
        int row = scanner.nextInt();
        if (row < 1) System.out.println("error");
        else {
            for (int i = row; i > 0; i--) {
                for (int j = i; j > 0; j--) {
                    System.out.print(" ");
                }
                System.out.println("@@@@@@@@@@");
            }
        }
    }

    /**
     * 编写JAVA程序，实现接收用户输入，直到输入500为止，统计输入的数字个数及其中奇数之和，要求：统计的数据中不包括最后输入的结束数字500。
     */
    public static void four() {
        System.out.println("请输入数字 500为停止");
        Scanner scanner = new Scanner(System.in);
        Integer num;
        int count = 0;
        int sum = 0;
        do {
            num = scanner.nextInt();
            count++;
            if (num % 2 != 0) sum += num;
        } while (num != 500);
        System.out.println("输入的数字个数" + count);
        System.out.println("奇数之和" + sum);
    }

    /**
     * 编写JAVA程序，实现接收班级10名学员JAVA成绩，根据平均分输出该班学员等级。
     * 规定：平均分在
     * 1、100—90之间等级为“A”
     * 2、80—89 等级为“B”
     * 3、70---79 等级为“C”
     * 4、60—69等级为“D”
     * 5、60以下为“E”
     * 要求：需要判断成绩有效范围1--100，如果超出范围，提示“成绩无效”，结束程序，效果图如下：
     */
    public static Scanner sc = new Scanner(System.in);

    public static void five() {
        double sum = 0d;
        for (int i = 0; i < 10; i++) {
            System.out.println("输入" + i + 1 + "号成绩");
            sum += sc.nextDouble();
        }
        double result = (double) sum / 10;
        if (part(result, 100, 90)) {
            System.out.println("A");
        } else if (part(result, 89, 80)) {
            System.out.println("B");
        } else if (part(result, 79, 70)) {
            System.out.println("C");
        } else if (part(result, 69, 60)) {
            System.out.println("D");
        } else {
            System.out.println("E");
        }
    }

    private static boolean part(double result, int i, int i1) {
        return result <= i && result >= i1;
    }

    /**
     * 输入一个五位正整数，使用数组判断它是不是回文数(如12321是回文数)。
     */
    public static void six() {
        int[] arr = new int[5];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = sc.nextInt();
        }
        int begin = 0;
        int end = arr.length - 1;
        while (begin < end) {
            if (arr[begin] == arr[end]) {
                begin++;
                end--;
            }
        }
        if (begin == end) System.out.println("yes");
        else System.out.println("no");
    }


    /**
     * 从键盘输入一个整数，然后判断数组中是否含有该数，如果存在，输出”猜对了”，否则输出”sorry”。
     */
    public static void seven() {
        List<Integer> list = new ArrayList<Integer>();
        Random random = new Random();
        for (int i = 0; i < 1000; i++) {
            list.add(random.nextInt());
        }
        System.out.println("猜一下");
        int i = sc.nextInt();
        if (list.contains(i)) System.out.println("yes");
        else System.out.println("sorry");
    }


    /**
     * 某个公司采用公用电话传递数据，数据是四位的整数，
     * 在传递过程中是加密的。加密规则是每位数字都加上5，
     * 然后再用除以10的余数代替该数字，再将第一位和第四位交换，
     * 第二位和第三位交换。编写一个程序，用于接收一个四位的整数，并且打印输出加密后的数
     */
    public static void eight() {
        System.out.println("请输入数字");
        int number = sc.nextInt();
        int g = number % 10;
        int s = number / 10 % 10;
        int b = number / 100 % 10;
        int q = number / 1000 % 10;
        g = f(g);
        s = f(s);
        b = f(b);
        q = f(q);
        int box = 0;
        box = g;
        g = q;
        q = box;
        box = s;
        s = b;
        b = box;
        System.out.println(g + "" + s + "" + b + "" + q);
    }

    private static int f(int i) {
        return (i + 5) % 10;
    }


    /**
     * 编写JAVA程序，实现接收用户输入的8个整数，输出最大值，最小值和平均值，要求：通过循环方式，查询数组中最大值和最小值。效果图如下：
     */
    public static void nine() {
        int[] arr = new int[8];
        int max = Integer.MIN_VALUE;
        int min = Integer.MAX_VALUE;
        int avg = 0;
        int sum = 0;
        for (int i = 0; i < 8; i++) {
            arr[i] = sc.nextInt();
            sum += arr[i];
            max = Math.max(max, arr[i]);
            min = Math.min(min, arr[i]);
        }
        avg = sum / arr.length;
        System.out.println("平均值" + avg + "最大值" + max + "最小值" + min);
    }

    /**
     * 编写JAVA程序，实现使用数组保存用户输入的5个数字，输出数组中下标为奇数的数组成员，并统计输入数据中偶数的个数。如图：
     */

    public static void ten() {
        int[] arr = new int[5];
        for (int i = 0; i < 5; i++) {
            arr[i] = sc.nextInt();
        }
        int count = 0;
        for (int i = 0; i < arr.length; i++) {
            if (i % 2 != 0) {
                System.out.println(arr[i]);
            } else count++;
        }

        System.out.println("偶数个数为" + count);
    }

    public static void homework1() {
        int sum = 0;
        for (int i = 1; i <= 100; i++) {
            sum += i;
        }
        System.out.println(sum);
    }

    public static void homework2() {
        int sum = 0;
        for (int i = 1; i <= 100; i+=2) sum += i;
        System.out.println(sum);
    }



}
